Symbolic Analysis Tools for CSP
نویسندگان
چکیده
Communicating Sequential Processes (CSP) is a well-known formal language for describing concurrent systems, where transition semantics for it has been given by Brookes, Hoare and Roscoe [1]. In this paper, we present trace refinement model analysis tools based on a generalized transition semantics of CSP, which we call HCSP, that merges the original transition system with ideas from Floyd-Hoare Logic and symbolic computation. This generalized semantics is shown to be sound and complete with respect to the original trace semantics. Traces in our system are symbolic representations of families of traces as given by the original semantics. This more compact representation allows us to expand the original CSP systems to effectively and efficiently model check some CSP programs that are difficult or impossible for other CSP systems to analyze. In particular, our system can handle certain classes of non-deterministic choices as a single transition, while the original semantics would treat each choice separately, possibly leading to large or unbounded case analyses. All the work described in this paper has been carried out in the theorem prover Isabelle [2]. This then provides us with a framework for automated and interactive analysis of CSP processes. It also gives us the ability to extract Ocaml code for an HCSP-based simulator directly from Isabelle. Based on the HCSP semantics and traditional trace refinement, we develop an idea of symbolic trace refinement and build a model checker based on it. The model checker was transcribed by hand into Maude [3] as automatic extraction of Maude code is not yet supported by the Isabelle system.
منابع مشابه
EULISP Threads: A Concurrency Toolbox
Many current high level languages have been designed with support for con-currency in mind, providing constructs for the programmer to build explicit parallelism into a program. The EuLisp threads mechanism, in conjunction with locks, and a generic event waiting operation provides a set of primitive tools with which such concurrency abstractions can be constructed. The object system (TELOS) pro...
متن کاملExperiments on Formal Verification of Mobile Agent Data Integrity Properties
This paper explores the possibility of applying existing verification techniques and tools to the cryptographic mechanisms specifically designed for the protection of mobile agents from their environment, with a particular emphasis on agent data integrity. In a previous paper we explored the use of the CSPbased tools FDR and Casper. Here, instead, we present our experience with a prototype of a...
متن کاملSymbolic Model-Checking of Stateful Timed CSP Using BDD and Digitization
Stateful Timed CSP has been recently proposed to model (and verify) hierarchical real-time systems. It is an expressive modeling language which combines data structure/operations, complicated control flows (modeled using compositional process operators adopted from Timed CSP), and real-time requirements like deadline and within . It has been shown that Stateful Timed CSP is equivalent to closed...
متن کاملClone selection programming and its application to symbolic regression
A new idea ‘clone selection programming (CSP)’ is introduced in this paper. The proposed methodology is used for deriving new algorithms in the area of evolutionary computing aimed at solving a wide range of problems. In CSP, antibodies represent candidate solutions, which are encoded according to the structure of antibody. The antibodies are able to keep syntax correct even they are changed wi...
متن کاملParsing and Validation of full CSP-M Specifications using Haskell and Prolog (Abstract)
CSP is a process algebra defined by Hoare. The first semantics associated with CSP was a denotational semantics in terms of traces, failures and divergences. Later an operational semantics was added [7]. CSP has been applied in many applications, notably for security protocols [6]. The most widely used tools today are fdr [2] and ProBE [3]. These tools use a syntax called machine readable CSP (...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2014